﻿using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Kursovaya_Pav.St.Dm
{
    public partial class EnterData : Form
    {
        public string idp = "";
        public EnterData()
        {
            InitializeComponent();
            Con_DB cdb = new Con_DB(@"DBdecor.accdb");
            dataSet1.Clear();
            // dataGridView1.Update();
            // dataGridView1.Columns.Clear();
            cdb.GetData("select * from Country", dataSet1);

            Con_DB cdb1 = new Con_DB(@"DBdecor.accdb");
            dataSet2.Clear();
            // dataGridView1.Update();
            // dataGridView1.Columns.Clear();
            cdb1.GetData("select * from Type_using", dataSet2);
           


            //Пример заполнения ComboBox
          
            for (int i = 0; i <= dataSet1.Tables[0].Rows.Count - 1; i++)
            {
                domainUpDown1.Items.Add(dataSet1.Tables[0].Rows[i][1].ToString());
            }
            for (int i = 0; i <= dataSet2.Tables[0].Rows.Count - 1; i++)
            {
                domainUpDown2.Items.Add(dataSet2.Tables[0].Rows[i][1].ToString());
       
            }
            

        }

        private void Form4_Load(object sender, EventArgs e)
        {

        }
        public byte[] pic;
        private void button1_Click(object sender, EventArgs e)
        {
            bool flag = true;
            try
            {
                
                double d;
                double d1;
                double d2;
                double d3;
                double d4;


                if (!double.TryParse(textBox3.Text, out d)) throw new Exception("Неверно введено количество");
                
                if (!double.TryParse(textBox4.Text, out d1)) throw new Exception("Неверно введена цена товара");
                if (!double.TryParse(textBox5.Text, out d2)) throw new Exception("Неверно введен налог");
                if (!double.TryParse(textBox6.Text, out d3)) throw new Exception("Неверно введен таможенный налог");
                if (!double.TryParse(textBox7.Text, out d4)) throw new Exception("Неверно введена цена доставки");

                Prod prod = new Prod(textBox1.Text, textBox2.Text, d, d1, d2, d3, d4);
            }
            catch (Exception ex)
            {
                flag = false;
                if (ex.Message != "Ссылка на объект не указывает на экземпляр объекта.")
                    MessageBox.Show(ex.Message, "Ошибка ввода");
            }


        if (flag)
        {
            ArrayList id = new ArrayList();
            ArrayList id1 = new ArrayList();
            id.Clear();
            id1.Clear();
            for (int i = 0; i <= dataSet1.Tables[0].Rows.Count - 1; i++)
            {
                id.Add(dataSet1.Tables[0].Rows[i][0].ToString());
            }
            for (int i = 0; i <= dataSet2.Tables[0].Rows.Count - 1; i++)
            {
                id1.Add(dataSet2.Tables[0].Rows[i][0].ToString());
            }


            string fieldSp = "Наименованиетовара";
            string tabSp = "Product";
            string Ras = "Товар на складе";
            if (checkedListBox1.CheckedItems.Count > 1)
            {
                Ras = "Товар на складе и витрине";
            }
            else
            {
                foreach (int indexChecked in checkedListBox1.CheckedIndices)
                {
                    if (indexChecked == 1)
                    {
                        Ras = "Товар на витрине";

                    }
                    else
                    {
                        Ras = "Товар на складе";

                    }
                }


            }
            Con_DB cdb = new Con_DB(@"DBdecor.accdb");
            if (pictureBox1.Image != null)
            {
                pic = conv_img(pictureBox1.Image);

                if (idp != "")
                {
                    cdb.SetData("Update " + tabSp + " SET Наименование_товара = '" + textBox1.Text + "',Артикул = '" + textBox2.Text + "',Страна_производства = '" + id[domainUpDown1.SelectedIndex].ToString() + "',Тип='" + id1[domainUpDown2.SelectedIndex].ToString() + "',Колличество = '" + textBox3.Text + "',Цена_за_ед_товара = '" + textBox4.Text + "',Налог_за_ед_товара = '" + textBox5.Text + "',Таможенный_налог_за_ед_товара = '" + textBox6.Text + "',Цена_доставки = '" + textBox7.Text + "',Расположение = '" + Ras + "', Photo=@DATA WHERE ID = " + idp, pic);
                }
                else
                {
                    cdb.SetData("Insert into " + tabSp + " (Наименование_товара,Артикул,Страна_производства,Тип,Колличество,Цена_за_ед_товара,Налог_за_ед_товара,Таможенный_налог_за_ед_товара,Цена_доставки,Расположение,Photo  ) values ('" + textBox1.Text + "','" + textBox2.Text + "','" + id[domainUpDown1.SelectedIndex].ToString() + "','" + id1[domainUpDown2.SelectedIndex].ToString() + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox5.Text + "','" + textBox6.Text + "','" + textBox7.Text + "','" + Ras + "', @DATA)", pic);
                }
            }
            else
            {
                if (idp != "")
                {
                    cdb.SetData("Update " + tabSp + " SET Наименование_товара = '" + textBox1.Text + "',Артикул = '" + textBox2.Text + "',Страна_производства = '" + id[domainUpDown1.SelectedIndex].ToString() + "',Тип='" + id1[domainUpDown2.SelectedIndex].ToString() + "',Колличество = '" + textBox3.Text + "',Цена_за_ед_товара = '" + textBox4.Text + "',Налог_за_ед_товара = '" + textBox5.Text + "',Таможенный_налог_за_ед_товара = '" + textBox6.Text + "',Цена_доставки = '" + textBox7.Text + "',Расположение = '" + Ras + "' WHERE ID = " + idp);
                }
                else
                {
                    cdb.SetData("Insert into " + tabSp + " (Наименование_товара,Артикул,Страна_производства,Тип,Колличество,Цена_за_ед_товара,Налог_за_ед_товара,Таможенный_налог_за_ед_товара,Цена_доставки,Расположение  ) values ('" + textBox1.Text + "','" + textBox2.Text + "','" + id[domainUpDown1.SelectedIndex].ToString() + "','" + id1[domainUpDown2.SelectedIndex].ToString() + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox5.Text + "','" + textBox6.Text + "','" + textBox7.Text + "','" + Ras + "')");
                }
            }

            this.DialogResult = DialogResult.OK;

       }
       
            
            
        }

        private byte[] conv_img(Image inputImage)
        {
            Bitmap BmpImage = new Bitmap(inputImage);
            MemoryStream mstr = new MemoryStream();
            BmpImage.Save(mstr, System.Drawing.Imaging.ImageFormat.Jpeg);
            byte[] imgasbyte =mstr.ToArray();
            return imgasbyte;

        }


        private void dropDownButton1_Click(object sender, EventArgs e)
        {

        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.DialogResult = DialogResult.Cancel;
        }

        private void button3_Click(object sender, EventArgs e)
        {
            OpenFileDialog openDialog = new OpenFileDialog();
            openDialog.RestoreDirectory = true;
            openDialog.Filter = "Фото |*.jpg";       
                if (openDialog.ShowDialog() == DialogResult.OK)
                {
                    pictureBox1.Image = new Bitmap(openDialog.FileName);
                    pictureBox1.Tag = openDialog.FileName;
                }            
        }


    }
}
